package bairui.international.controller.user.user;

/**
 *
 */
@SuppressWarnings("serial")
abstract 
public class Module_SenderInfo_OutputModel
 extends bairui.international.model.domain.jpa.TB_BranchCompanyStaff
{

	/**
	 * 构造函数
	 */
	@lombok.Getter @com.fasterxml.jackson.annotation.JsonIgnore
	private bairui.international.model.domain.jpa.TB_BranchCompanyStaff _origin;

	public Module_SenderInfo_OutputModel(
		bairui.international.model.domain.jpa.TB_BranchCompanyStaff bean
	) {
		this._origin = bean;
		if(null != bean){
			this.setId(bean.getId());
			this.setDimensionalUrl(bean.getDimensionalUrl());
			this.setDirectorFlag(bean.getDirectorFlag());
		}
		/* 附加属性赋值前 */
		assign_before();
		/* 附加属性赋值 */
		this.setAvatarUrl(this.assignAvatarUrl());
		this.setNickName(this.assignNickName());
		this.setRealName(this.assignRealName());
		this.setPhone(this.assignPhone());
		this.setCreateTime(this.assignCreateTime());
		this.setState(this.assignState());
	}
	

	/**
	 * 非继承属性
	 */
	abstract protected void assign_before();

	/** 头像URL */
	@lombok.Getter @lombok.Setter 
	private String avatarUrl;
	/** 赋值头像URL */
	abstract protected String assignAvatarUrl();

	/** 昵称 */
	@lombok.Getter @lombok.Setter 
	private String nickName;
	/** 赋值昵称 */
	abstract protected String assignNickName();

	/** 真实姓名 */
	@lombok.Getter @lombok.Setter 
	private String realName;
	/** 赋值真实姓名 */
	abstract protected String assignRealName();

	/** 电话 */
	@lombok.Getter @lombok.Setter 
	private String phone;
	/** 赋值电话 */
	abstract protected String assignPhone();

	/** 注册时间 */
	@lombok.Getter @lombok.Setter 
	private java.util.Date createTime;
	/** 赋值注册时间 */
	abstract protected java.util.Date assignCreateTime();

	/** 状态 */
	@lombok.Getter @lombok.Setter 
	private bairui.international.model.status.State_User state;
	/** 赋值状态 */
	abstract protected bairui.international.model.status.State_User assignState();

	/**
	 * json忽略注解覆盖继承属性
	 */

	/**
	 * 对象转字符串输出
	 */

}
